/*
 * @Author: 白印潇 bai_yinxiao@163.com
 * @Date: 2023-01-11 14:04:17
 * @LastEditors: 白印潇 bai_yinxiao@163.com
 * @LastEditTime: 2023-03-27 17:22:24
 * @FilePath: /shortRent-ui/src/utils/filters.js
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
import { dayjs } from "@/main.js";
export { parseTime, formatDate } from "./index";
/**
 * 无值的字段填充为--
 * @param {number|string} value 内容
 * @returns 内容
 */
export function filterNull(value) {
    // if (Number(value) === 0) {
    if (value === 0 || typeof value === "number") {
        return value;
    } else {
        return require("lodash/isEmpty")(value) ? "--" : value;
    }
}
export function mmvImageUrl(url) {
    if (!url) {
        return url;
    }
    if (url.indexOf("https:") > -1) {
        return url;
    }
    if (url.indexOf("http:") > -1) {
        return url;
    }
    if (url.indexOf("static/") > -1) {
        return url;
    }
    return process.env.VUE_APP_BASE_IMAGE_URL + url;
}
// 收费绑定项 1：新增订单 2：还车验车
export function bindingCharges(value) {
    return {
        1: "新增订单",
        2: "还车验车",
    }[Number(value)];
}
// 收费类型（1按次 2按天 3按里程 ）
export function chargeItemsType(value) {
    return {
        1: "按次",
        2: "按天",
        3: "按里程",
    }[Number(value)];
}
// 是否可选（1是2否）
export function isOptional(value) {
    return {
        1: "是",
        2: "否",
    }[Number(value)];
}
// 是否启用 0未启用，1启用
export function isAvailable(value) {
    return {
        0: "停用",
        1: "启用",
    }[Number(value)];
}
// 是否有套餐 0无，1有
export function isSetMeal(value) {
    return {
        0: "无",
        1: "有",
    }[Number(value)];
}
// 是否全部客户(1是2否)
export function isAllMember(value) {
    return {
        1: "是",
        2: "否",
    }[Number(value)];
}

// 征信包查询项
export function creditOption(value) {
    return {
        1: "实名认证",
        2: "运营商三要素",
        3: "运营商在网时长",
        4: "运营商在网状态",
        5: "银行卡三要素",
        6: "个人投资核查",
        7: "疑似养卡数据校验",
        8: "空号检测",
        9: "高法失信被执行人",
        10: "整体涉诉查询",
        11: "重点人员核验",
        12: "偿债能力评级(个税)",
        13: "公司基本信息",
        14: "企业裁判文书",
        15: "企业失信被执行人",
        16: "企业被执行人",
        17: "司法协助",
        18: "重大税收违法",
        19: "严重违法",
        20: "异常经营名录",
        21: "欠税公告",
        22: "行政处罚",
    }[Number(value)];
}

// 反欺诈查询项查询状态
export function creditQueryStatus(value) {
    return {
        0: "待查询",
        1: "查询中",
        2: "查询成功",
        3: "查询异常",
    }[Number(value)];
}

// 违章查询平台
export function platform(value) {
    return {
        1: "12123",
        2: "深圳交警",
    }[Number(value)];
}

// 违章查询方式
export function submitType(value) {
    return {
        1: "手动查询",
        2: "定时查询",
    }[Number(value)];
}

// 查询类型 0全部车辆 1部分
export function queryMode(value) {
    return {
        1: "全部车辆",
        2: "部分车辆",
    }[Number(value)];
}

// 交管平台车辆类型
export function hpCode(value) {
    return {
        "01": "大型汽车",
        "02": "小型汽车",
        51: "大型新能源汽车",
        52: "小型新能源汽车",
        "05": "境外汽车",
        "06": "外籍汽车",
    }[String(value)];
}

// 违章查询查询状态
export function illegalQueryStatus(value) {
    return {
        0: "待查询",
        1: "查询中",
        2: "查询成功",
        3: "查询失败",
    }[Number(value)];
}

// ota工单类型
export function workOrderType(value) {
    return {
        1: "库存占用",
        2: "库存释放",
    }[Number(value)];
}
// ota工单状态
export function workOrderStatus(value) {
    return {
        0: "待执行",
        1: "已执行",
    }[Number(value)];
}

// ota工单类型
export function otaOrderStatus(value) {
    return {
        0: "占用中",
        1: "无车辆信息",
        2: "已占用",
        3: "已释放",
        4: "时间冲突",
        5: "释放无效",
        6: "释放中",
        7: "无账号",
        8: "占用失败",
        9: "已停售",
        10: "待上线",
        11: "系统下线",
    }[Number(value)];
}

//管理员类型
export function contactsType(value) {
    return {
        1: "法人",
        2: "代理人",
    }[Number(value)];
}

//合同模板状态
export function templeteStatus(value) {
    return {
        1: "可用",
        2: "停用",
        3: "草稿",
        4: "已删除",
        5: "保存中",
    }[Number(value)];
}

//合同类型
export function contractType(value) {
    return {
        1: "租车合同",
        2: "续租合同",
    }[Number(value)];
}

//签章类型
export function signatureMethod(value) {
    return {
        1: "自动签章",
        2: "手动签章",
    }[Number(value)];
}

//证件类型
export function idType(value) {
    return {
        1: "身份证",
        2: "护照",
    }[Number(value)];
}

// 认证状态(1.未认证 2.认证中 3.认证失败 4.已认证)
export function authenticationStatus(value) {
    return {
        1: "未认证",
        2: "认证中 ",
        3: "认证失败",
        4: "已认证",
    }[Number(value)];
}

//合同状态: -1未签署,1待出租方签署,2待承租方签署,3已完成,4已废弃（已签署）,5已废弃（未签署）
export function contractStatus(value) {
    return {
        "-1": "未签署",
        1: "待出租方签署",
        2: "待承租方签署",
        3: "已完成",
        4: "已废弃（已签署）",
        5: "已废弃（未签署）",
    }[Number(value)];
}

export function useTimeType(value) {
    return {
        1: "小时",
        2: "天 ",
        3: "月",
    }[Number(value)];
}

// 车辆状态(1待整备，2备发车，3 预定中  4.用车中 5.车辆借出 6.车辆借入
export function carStatus(value) {
    return {
        1: "待整备",
        2: "备发车",
        3: "预定中",
        4: "用车中",
        5: "车辆借出",
        6: "车辆借入",
    }[Number(value)];
}

// 托管账单类型 1、日租订单 2、车辆借出 3、车辆维修 4、车辆保养 5、商业险续保 6、交强险续保 7、车辆年检")
export function escrowBillType(value) {
    return {
        1: "日租订单",
        2: "车辆借出",
        3: "车辆维修",
        4: "车辆保养",
        5: "商业险续保",
        6: "交强险续保",
        7: "车辆年检",
    }[Number(value)];
}

// 付款状态 1、未付款 2、已付款
export function escrowPayStatus(value) {
    return {
        1: "未付款",
        2: "已付款",
    }[Number(value)];
}

// 支付方式(1=.微信2.支付宝3.信用卡,4=.现金)")
export function escrowPayway(value) {
    return {
        1: "微信",
        2: "支付宝",
        3: "信用卡",
        4: "现金",
    }[Number(value)];
}

export function formatTime(time, reg) {
    if (!time) return "-";
    switch (reg) {
        case 0:
            reg = "YYYY-MM-DD";
            break;
        case 1:
            reg = "YYYY-MM-DD HH:mm:ss";
            break;
    }
    let pass = dayjs(time).isValid();
    if (!pass) return time;

    return dayjs(time).format(reg);
}

// 信审批复建议
export function creditSuggestionApproval(value) {
    return {
        7: "全部通过",
        8: "部分通过",
        9: "拒绝",
    }[Number(value)];
}

// 信审批复建议审批状态
export function creditSuggestionApprovalStatus(value) {
    return {
        4: "批复建议审批中",
        5: "批复建议被拒绝",
        6: "批复建议通过",
    }[Number(value)];
}

// 模板来源
export function templateSource(value) {
    return {
        1: "法提",
        2: "额度申请-价审",
        3: "额度申请-信审",
        4: "合同申请",
    }[Number(value)];
}

// 合同模版审批状态
export function contractTemplateApprovalStatus(value) {
    return {
        1: "待审批",
        2: "审批中",
        3: "审批通过",
        4: "审批拒绝",
    }[Number(value)];
}

// 是否需要担保人
export function needGuarantor(value) {
    return {
        1: "是",
        2: "否",
        3: "选择性提供",
    }[Number(value)];
}

// 生效状态 0待审核 1生效中 2已过期
export function effectiveStatus(value) {
    return {
        0: "待审核",
        1: "生效中",
        2: "已过期",
    }[Number(value)];
}

export function menuType(value) {
    return {
        'M': "目录",
        'C': "菜单",
        'P': "页面",
        'F': "按钮"
    }[String(value)];
}